197 research outputs found

    Preliminary draft

    Get PDF
    is permitted for educational or research use on condition that this copyright notice is included in any copy. See back inner page for a list of recent publications in the BRICS Report Series. Copies may be obtained by contacting: BRIC

    A Presheaf Semantics of Value-Passing Processes

    Get PDF
    This paper investigates presheaf models for process calculi withvalue passing. Denotational semantics in presheaf models are shownto correspond to operational semantics in that bisimulation obtainedfrom open maps is proved to coincide with bisimulation as definedtraditionally from the operational semantics. Both "early" and "late"semantics are considered, though the more interesting "late" semanticsis emphasised. A presheaf model and denotational semantics is proposedfor a language allowing process passing, though there remainsthe problem of relating the notion of bisimulation obtained from openmaps to a more traditional definition from the operational semantics.A tentative beginning is made of a "domain theory" supportingpresheaf models

    An Operational Understanding of Bisimulation from Open Maps

    Get PDF
    AbstractModels can be given to a range of programming languages combining concurrent and functional features in which presheaf categories are used as the semantic domains (instead of the more usual complete partial orders). Once this is done the languages inherit a notion of bisimulation from the “open” maps associated with the presheaf categories. However, although there are methodological and mathematical arguments for favouring semantics using presheaf categories—in particular, there is a “domain theory” based on presheaf categories which systematises bisimulation at higher-order—it is as yet far from a routine matter to read off an “operational characterisation”; by this I mean an equivalent coinductive definition of bisimulation between terms based on the operational semantics. I hope to illustrate the issues on a little process-passing language. This is joint work with Gian Luca Cattani

    Event Structure Semantics for CCS and Related Languages

    Get PDF
    We give denotational semantics to a wide range of parallel programming languages based on the ideas of Milner's CCS, that processes communicate by events of mutual synchronisation.Processes are denoted by labelled event structures. Event structures represent concurrency rather directly as in net theory.The semantics does not simulate concurrency by non-deterministic interleaving

    Semantics, Algorithmics and Logic: Basic Research in Computer Science. BRICS Inaugural Talk

    Get PDF
    This is a transcript of a talk at the inauguration of BRICS, Basic Research in Computer Science, Centre of the Danish Research Foundation, on 2 February 1994 at the Steno museum, University of Aarhus, Denmark

    On the compositional checking of validity

    Get PDF
    This paper is concerned with deciding whether or not assertions are valid of a parallel process using methods which are directed by the way in which the process has been composed. The assertions are drawn from a modal logic with recursion, capable of expressing a great many properties of interest. The processes are described by a language inspired by Milner's CCS and Hoare's CSP, though with some modifications. The choice of constructors allows us to handle a range of synchronisation disciplines and ensures that the processes denoted are finite state. The operations are prefixing, a non-deterministic sum, product, restriction, relabelling and a looping construct. Arbitrary parallel compositions are obtained by using a combination of product, restriction and relabelling. We are interested in deciding whether or not an assertion A is valid of a process t. If it is valid, in the sense that every reachable state of t satisfies A, we write |= A:t. This paper investigates the extent to which the composition of t can guide methods for deciding |= A:t. For instance if t were a sum t_0 + t_1 we can ask what assertions A_0 and A_1 should be valid of t_0 and t_1 respectively to ensure that A is valid of t_0 + t_1. The paper formulates new compositional methods for deciding validity, and exposes some fundamental difficulties. Algorithms are provided to reduce validity problems for prefixing, sum, relabelling, restriction and looping to validity problems for their immediate components --- all these reductions depend only on the top-level structure of terms. The existence of these reductions rests on being able to 'embed' the properties of a term in the properties, or products of properties, of its immediate subterms. Because there is not such a simple embedding for the product construction of terms, as might be expected, similar reductions become much more complicated for products; although there are general results, and the reductions can be simple in special cases, the general treatment for products meets with fundamental difficulties. Whereas reductions for products always exist for this finite state language, they demonstrably no longer just depend on the top-level (product structure) of the term; in particular, a simple assertion is exhibited for which the size of the reduction must be quadratic in the number of states of the process. An attempt is thus made to explain what makes product different from the other operations with respect to compositional reasoning, and to delimit the obstacles to automated compositional checking of validity on parallel processes

    A Linear Metalanguage for Concurrency

    Get PDF
    A metalanguage for concurrent process languages is introduced.Within it a range of process languages can be defined, includinghigher-order process languages where processes are passed and received as arguments. (The process language has, however, to be linear, in the sense that a process received as an argument can be run at most once, and not include name generation as in the Pi-Calculus.) The metalanguage is provided with two interpretations both of which can be understood as categorical models of a variant of linear logic. One interpretation is in asimple category of nondeterministic domains; here a process will denote its set of traces. The other interpretation, obtained by direct analogy with the nondeterministic domains, is in a category of presheaf categories; the nondeterministic branching behaviour of a process is captured in its denotation as a presheaf. Every presheaf category possesses a notion of (open-map) bisimulation, preserved by terms of the metalanguage. Theconclusion summarises open problems and lines of future work

    Thin Games with Symmetry and Concurrent Hyland-Ong Games

    Get PDF
    We build a cartesian closed category, called Cho, based on event structures. It allows an interpretation of higher-order stateful concurrent programs that is refined and precise: on the one hand it is conservative with respect to standard Hyland-Ong games when interpreting purely functional programs as innocent strategies, while on the other hand it is much more expressive. The interpretation of programs constructs compositionally a representation of their execution that exhibits causal dependencies and remembers the points of non-deterministic branching.The construction is in two stages. First, we build a compact closed category Tcg. It is a variant of Rideau and Winskel's category CG, with the difference that games and strategies in Tcg are equipped with symmetry to express that certain events are essentially the same. This is analogous to the underlying category of AJM games enriching simple games with an equivalence relations on plays. Building on this category, we construct the cartesian closed category Cho as having as objects the standard arenas of Hyland-Ong games, with strategies, represented by certain events structures, playing on games with symmetry obtained as expanded forms of these arenas.To illustrate and give an operational light on these constructions, we interpret (a close variant of) Idealized Parallel Algol in Cho
    • …
    corecore